﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ServiceModel;
using System.ServiceModel.Web;

using MS_Enitity.EAP;
using System.Net;


namespace rest
{

    [ServiceContract(Name = "MesRestService")]
    public interface IMesRestService
    {
        //AGV请求入
        [OperationContract]
        //[WebInvoke(UriTemplate = Routing.AgvCallback, Method = "POST", RequestFormat = WebMessageFormat.Json, ResponseFormat=WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare)]
        [WebInvoke(UriTemplate = "/AisCenterAgvAskIn", Method = "POST", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare)]
        AgvRequestEntryResponse AisCenterAgvAskIn(AgvRequestEntry request);

        //AGV离开完成
        [OperationContract]
        //[WebInvoke(UriTemplate = Routing.AgvCallback, Method = "POST", RequestFormat = WebMessageFormat.Json, ResponseFormat=WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare)]
        [WebInvoke(UriTemplate = "/AisCenterAgvTellOut", Method = "POST", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare)]
        AgvTellOutResponse AisCenterAgvTellOut(AgvTellOut request);





        ////收放板机系统被动接受任务
        [OperationContract]
        //[WebInvoke(UriTemplate = Routing.AgvCallback, Method = "POST", RequestFormat = WebMessageFormat.Json, ResponseFormat=WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare)]
        [WebInvoke(UriTemplate = "/AisRecvEapTask", Method = "POST", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare)]
        RecvEapTaskResponse AisRecvEapTask(RecvEapTask request);


        ////4.6	收放板机系统任务取消
        [OperationContract]
        //[WebInvoke(UriTemplate = Routing.AgvCallback, Method = "POST", RequestFormat = WebMessageFormat.Json, ResponseFormat=WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare)]
        [WebInvoke(UriTemplate = "/CancelTask", Method = "POST", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare)]
        CancelTaskResponse CancelTask(CancelTask request);


        ////4.14	收放板机系统接受远程控制HMI文本显示
        [OperationContract]
        //[WebInvoke(UriTemplate = Routing.AgvCallback, Method = "POST", RequestFormat = WebMessageFormat.Json, ResponseFormat=WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare)]
        [WebInvoke(UriTemplate = "/RecvRemoteHmiMsg", Method = "POST", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare)]
        RecvRemoteHmiMsgResponse RecvRemoteHmiMsg(RecvRemoteHmiMsg request);


        ////4.15	收放板机系统通讯状态测试
        [OperationContract]
        //[WebInvoke(UriTemplate = Routing.AgvCallback, Method = "POST", RequestFormat = WebMessageFormat.Json, ResponseFormat=WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare)]
        [WebInvoke(UriTemplate = "/ConnTest", Method = "POST", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare)]
        ConnTestResponse ConnTest(ConnTest request); 










    }





}
